var _id = null;
var _state = null;
var form = null;
$(function(){

    form = layui.form;

    form.on('select(business)', function(data){
        _state = data.value;
        if(_state=='系统异常信息报警'){
            $('#alarm').hide()
        }else{
            $('#alarm').show()
        }

    })
    form.render();
    $.ajax({
        type : "get",
        url : baseURL+"mailType/findAdMailTypeList",
        dataType : "json",
        success: function(data) {
            if(data.code==0){
                var _html = '<option value="">请选择类型名称</option>'
                for(var i=0;i<data.result.length;i++){
                    _html = _html + '<option value="'+data.result[i].typeName+'">'+data.result[i].typeName+'</option>'
                }
                $('#siteSelect').html(_html);
                $('#siteSelect').selectpicker('refresh');
            }else{
                layer.msg('数据获取失败');
            }
        },
        error:function(){
            statsData = false;
            layer.msg('数据获取失败');
        }
    });


    $('#btnconfirm').click(function(){
        //确认保存
        if($('#type').val()==''){
            layer.msg('类型不能为空')
            return;
        }
        // if($('#name').val()==''){
        //     layer.msg('名称不能为空')
        //     return;
        // }
        if($('#num').val()=='' && _state!='系统异常信息报警'){
            console.log(_state,'ssssssssss')
            layer.msg('报警值不能为空')
            return;
        }
        if(($('#startTime').val()=='' ) || ($('#endTime').val()=='')){
            layer.msg('时间格式为空')
            return;
        }
        if($('#interval').val()==''){
            layer.msg('时间间隔不能为空')
            return;
        }
        if($('#intervalNum').val()==''){
            layer.msg('间隔次数不能为空')
            return;
        }

        var params = {
            id: _id ? _id : "",
            warnName:_state,
            warnValue:$('#num').val(),
            startTime:$('#startTime').val(),
            endTime:$('#endTime').val(),
            isOpen:$('.layui-unselect em').html()=='开启'?0:1,
            warnInterval:$('#interval').val(),
            warnNum:$('#intervalNum').val()
        }
        var index = layer.load(2);
        if(_id){
            $.ajax({
                type: "post",
                url: baseURL + "warnset/updateWarnSet",
                data:JSON.stringify(params),
                contentType:"application/json",
                success: function (data) {
                    layer.close(index);
                    if(data.code==0){
                        layer.msg('修改成功');
                        $('#addModel').hide();
                        $('#indexModel').show();
                        $('#bootstrap-table').bootstrapTable('refresh');
                    }else{
                        layer.msg(data.msg);
                    }
                }
            })
        }else{
            $.ajax({
                type: "post",
                url: baseURL + "warnset/addWarnSet",
                data:JSON.stringify(params),
                contentType:"application/json",
                success: function (data) {
                    layer.close(index);
                    if(data.code==0){
                        layer.msg('添加成功');
                        $('#addModel').hide();
                        $('#indexModel').show();
                        $('#bootstrap-table').bootstrapTable('refresh');
                    }else{
                        layer.msg(data.msg);
                    }
                }
            })
        }

    })
    $('#btnreturn').click(function(){
        //返回列表
        $('#addModel').hide();
        $('#indexModel').show();
    })


    $('#btnadd').click(function(){
        _id = null;

        showadd()
    })

    $('#search').click(function(){
        $('#bootstrap-table').bootstrapTable('refresh');
    })
    init()
})
function edit(e){
    _id = e;
    showadd()
}

function remove(e){
    layer.confirm('确定要删除吗？', {icon: 3, title:'提示'}, function(index){
        $.ajax({
            type: "post",
            url: baseURL + "warnset/deleteWarnSet",
            contentType:"application/json",
            data:JSON.stringify({
                id:e
            }),
            success: function (data) {
                if(data.code==0){
                    $('#bootstrap-table').bootstrapTable('refresh');
                    layer.msg('删除成功！');
                }else{
                    layer.msg('数据获取失败');
                }
            }
        })

        layer.close(index);
    });
}

function showadd(){

    $('#num').val('');
    $('#startTime').val('');
    $('#endTime').val('');
    $('#interval').val('')
    $('#intervalNum').val('')

    $.ajax({
        type: "get",
        url: baseURL + "mailType/findAdMailTypeList",
        dataType: "json",
        success: function (data) {
            if (data.code == 0) {
                var _html = ''
                for(var i=0;i<data.result.length;i++){
                    _html = _html + '<option value="'+data.result[i].typeName+'">'+data.result[i].typeName+'</option>'
                }
                _state = data.result[0].typeName
                $('#select').html(_html);
                $('#isopen').prop('checked','checked')
                form.render();
                $('.layui-form-switch').css('width','55px');
                if(_state=='系统异常信息报警'){
                    $('#alarm').hide()
                }else{
                    $('#alarm').show()
                }
                if(_id){
                    var index = layer.load(2);

                    $.ajax({
                        type: "post",
                        url: baseURL + "warnset/findWarnSetById",
                        contentType:"application/json",
                        data:JSON.stringify({
                            id:_id
                        }),
                        success: function (data) {
                            layer.close(index);
                            if(data.code==0){
                                $("#select [value="+data.warnset.warnTableName+"]").attr("selected","selected");
                                _state=data.warnset.warnTableName;
                                // $('#name').val(data.warnset.warnName);
                                $('#num').val(data.warnset.warnValue);
                                $('#startTime').val(data.warnset.startTime);
                                $('#endTime').val(data.warnset.endTime);
                                $('#interval').val(data.warnset.warnInterval)
                                $('#intervalNum').val(data.warnset.warnNum)
                                if(data.warnset.isOpen==0){
                                    $('#isopen').prop('checked','checked')
                                }else{
                                    $('#isopen').removeAttr('checked')
                                }
                                form.render()
                                if(_state=='系统异常信息报警'){
                                    $('#alarm').hide()
                                }else{
                                    $('#alarm').show()
                                }
                                $('.layui-form-switch').css('width','55px')
                            }else{
                                layer.msg('数据获取失败');
                            }
                        }
                    })
                }
            }
        }
    })




    $('#addModel').show();
    $('#indexModel').hide();
    $('.layui-form-switch').css('width','55px')
    var laydate = layui.laydate;


    laydate.render({
        elem: '#startTime',
        type:'time',
        position: 'fixed'
    });
    laydate.render({
        elem: '#endTime',
        type:'time',
        position: 'fixed'
    });
}
function init(){
    $('#bootstrap-table')
        .bootstrapTable(
            {
                method : 'get', // 服务器数据的请求方式 get or post
                url : baseURL + 'warnset/findWarnSet', // 服务器数据的加载地址
                showRefresh : true,
                showToggle : true,
                showColumns : true,
                showExport :true,
                sortable: true,
                sortName:"userId",// 排序列名称
                sortOrder: "desc",
                iconSize : 'outline',
                toolbar : '#exampleToolbar',
                striped : true, // 设置为true会有隔行变色效果
                dataType : "json", // 服务器返回的数据类型
                pagination : true, // 设置为true会在底部显示分页条
                // queryParamsType : "limit",
                // //设置为limit则会发送符合RESTFull格式的参数
                singleSelect : false, // 设置为true将禁止多选
                // contentType : "application/x-www-form-urlencoded",
                // //发送到服务器的数据编码类型
                pageSize : 10, // 如果设置了分页，每页数据条数
                pageNumber : 1, // 如果设置了分布，首页页码
                // search : true, // 是否显示搜索框
                //showColumns : false, // 是否显示内容下拉框（选择显示的列）
                sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者
                // "server"
                queryParams : function(params) {

                    return {
                        // 说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
                        limit : params.limit,
                        page : (params.offset/params.limit)+1,
                        warnName:$('#siteSelect').val()
                    };
                },
                // //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
                // queryParamsType = 'limit' ,返回参数必须包含
                // limit, offset, search, sort, order 否则, 需要包含:
                // pageSize, pageNumber, searchText, sortName,
                // sortOrder.
                // 返回false将会终止请求
                columns : [
                    // {
                    //     checkbox : true
                    // },
                    {
                        field : 'warnType', // 列字段名
                        title : '类型', // 列标题
                        align : 'center'

                    },
                    {
                        field : 'warnTableName',
                        title : '名称',
                        align : 'center'
                    },
                    {
                        field : 'isOpen',
                        title : '是否开启',
                        align : 'center',
                        formatter : function(value, row,index) {
                            return row.isOpen==0?'开启':'关闭'
                        }
                    },
                    {
                        field : 'warnValue',
                        title : '报警最低值',
                        align : 'center'
                    },
                    {
                        field : 'startTime',
                        title : '开始时间',
                        align : 'center'
                    },
                    {
                        field : 'endTime',
                        title : '结束时间',
                        align : 'center'
                    },
                    {
                        field : 'warnInterval',
                        title : '时间间隔',
                        align : 'center'
                    },
                    {
                        field : 'warnNum',
                        title : '间隔次数',
                        align : 'center'
                    },
                    {
                        title : '操作',
                        field : 'id',
                        align : 'center',
                        formatter : function(value, row,index) {
                            var e = '<div style="margin-right: 10px;" class="btn btn-primary btn-sm " onclick="edit('+row.id+')"><i class="fa fa-edit" style="margin-right:5px;"></i>编辑</div>';
                            var d = '<div class="btn btn-warning btn-sm" onclick="remove('+row.id+')"><i class="fa fa-remove" style="margin-right:5px;"></i>删除</div>';
                            return e + d;

                        }
                    } ]
            });
}